package io;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/**
 * 使用文件输入流FileInputStream从文件中读取数据
 */
public class FisDemo {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("fos.dat");
        /**
         * fos.dat文件的数据:
         *  00000001 00000010 文件末尾
         *
         *  第1次读: 读取文件中的  00000001 00000010 文件末尾
         *                      ^^^^^^^^
         *  返回的d的二进制数据:
         *   00000000 00000000 00000000 00000001------------(1)
         */
        int d = fis.read();
        System.out.println(d); //1
        /*
         * 第2次读: 读取文件中的  00000001 00000010 文件末尾
         *                              ^^^^^^^^
         *  返回的d的二进制数据:
         *   00000000 00000000 00000000 00000010------------(2)
         */
        d = fis.read();
        System.out.println(d); //2
        /*
         * 第3次读: 读取文件中的  00000001 00000010 文件末尾
         *                                       ^^^^^^^^
         *  返回的d的二进制数据:
         *   111111111 111111111 111111111 111111111------------(-1)
         *   32位2进制全是1，即为整数-1，用于表示流读取到了末尾
         */
        d = fis.read();
        System.out.println(d); //-1
        fis.close(); //流使用用要关闭
    }
}
















